/*
*    l3qd - Light, light, lightweight queue
*    Copyright (C) 2024  Marcus Pedersén marcus@marcux.org
*
*    This program is free software: you can redistribute it and/or modify
*    it under the terms of the GNU General Public License as published by
*    the Free Software Foundation, either version 3 of the License, or
*    (at your option) any later version.
*
*    This program is distributed in the hope that it will be useful,
*    but WITHOUT ANY WARRANTY; without even the implied warranty of
*    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
*    GNU General Public License for more details.
*
*    You should have received a copy of the GNU General Public License
*    along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */

package list

import (
	"github.com/spf13/cobra"
)

var listHistoryCmdFlagLong, listHistoryCmdFlagVerbose bool
var listHistoryCmdFlagNumber uint

var listHistoryCmd = &cobra.Command{
	Use:   "history",
	Short: "Lists all terminated and canceled jobs in l3q",
	Long: `Description:
  Lists all terminated and canceled jobs in l3q.
  The values in Task column are the number of tasks: 
  Running/Terminated/Error:Total`,
	Run: func(cmd *cobra.Command, args []string) {
		PrintQueue(listHistoryCmdFlagLong, listHistoryCmdFlagVerbose, true, listHistoryCmdFlagNumber)
	},
}

func init() {
	listHistoryCmd.Flags().BoolVarP(&listHistoryCmdFlagLong, "long", "l", false, "Print extended, long list.")
	listHistoryCmd.Flags().BoolVarP(&listHistoryCmdFlagVerbose, "verbose", "v", false, "Print verbose output")
	listHistoryCmd.Flags().UintVarP(&listHistoryCmdFlagNumber, "number", "n", 0, "Limit the number of old jobs to be displayed.")
}
